A barcode is an optical, machine-readable, representation of data; the data usually describes something about the object that carries the barcode. Barcodes are ubiquitous in automated supermarket checkout systems and their use has spread to many other tasks that are generically referred to as automatic identification and data capture (AIDC). QR codes, a specific type of 2D barcode, have recently become very popular. A QR code consists of black squares arranged in a square grid on a white background, which can be read by an imaging device such as a camera, and processed using Reed-Solomon error correction until the image can be appropriately interpreted. The required data is then extracted from patterns that are present in both horizontal and vertical components of the image. QR codes may be used to display text to the user, to add a vCard contact to the user's device, to open a Uniform Resource Identifier (URI), or to compose an email or text message. QR codes have become common in consumer advertising. QR codes can also be used to store bank account information or credit card information, or they can be specifically designed to work with particular payment provider applications.
Typically, a smartphone is used as a QR code scanner, displaying the code and converting it to some useful form (such as a standard URL for a website, thereby obviating the need for a user to type the URL into a web browser). QR codes have become a focus of advertising strategy, since they provide a way to access a brand's website more quickly than by manually entering a URL. Barcodes and QR codes are used over a wide range of applications, including commercial tracking, entertainment and transport ticketing, product and loyalty marketing, etc. One example is mobile couponing where a company's discount can be captured and decoded using a barcode or QR code decoder in a mobile app. In another example, a company's information such as address and related information is stored alongside its alpha-numeric text data (e.g. as can be seen in the Yellow Pages directory).
However, the increased use of barcodes and QR codes in a wide variety of applications has made them a target for hacking attacks. At its most straightforward, currently it is easy to copy “used” barcodes (for example, by making a photocopy) and print them out. Hackers can also impermissibly share digital barcodes using screen capture methods (e.g., taking a photograph of a barcode and then reusing it multiple times). Freely-available computer programs allow hackers to decode or write barcodes. While readers and scanners for two-dimensional barcodes are still comparatively expensive, once they are obtained, these devices are easy to reconfigure. This hacking approach might be applied to copy and/or print airline boarding cards, event tickets (e.g., concert tickets), coupons, vouchers for free items, membership cards, secure access cards, and so on. As a result, companies offering services using digital barcodes suffer substantial economic and productivity losses. These and other problems exist with the use of barcodes and AIDC.
The drawings have not necessarily been drawn to scale. Similarly, some components and/or operations may be separated into different blocks or combined into a single block for the purposes of discussion of some of the embodiments of the present technology. Moreover, while the technology is amenable to various modifications and alternative forms, specific embodiments have been shown by way of example in the drawings and are described in detail below. The intention, however, is not to limit the technology to the particular embodiments described. On the contrary, the technology is intended to cover all modifications, equivalents, and alternatives falling within the scope of the technology as defined by the appended claims.